package com.wanmait.zaisousuo.mapper;

import com.wanmait.zaisousuo.pojo.Article;
import org.apache.ibatis.annotations.Param;
import org.aspectj.lang.annotation.Pointcut;

import java.util.List;

public interface ArticleMapper {
    int deleteByPrimaryKey(Integer id);

    //添加文章
    int insert(Article record);

    int insertSelective(Article record);

    Article findById(Integer id);

    int updateByPrimaryKeySelective(Article record);

    int updateByPrimaryKey(Article record);

    //多条件查询文章
    List<Article> findAllByConditions(@Param("typeId") Integer typeId, @Param("textId")Integer textId,@Param("orderBy")String orderBy);

    //可以根据时间范围搜索出文章
    List<Article> findAll(@Param("startTime") String startTime, @Param("endTime")String endTime);

    //根据用户id查文章
    List<Article>findByUserId(Integer id);

    //后台更改文章的disabled状态
    void updatechangeDisabled(@Param("flag") Boolean flag,@Param("articleId") Integer articleId);

    //根据文章id查询标题内容即可
    Article findContentById(Integer id);

    //更新文章的点赞数
    void updatePraiseCount(@Param("praiseCount") Integer praiseCount,@Param("id") Integer id);

    //更新文章的收藏数
    void updateCollectCount(List<Article>articles);

    //文章评论数+1
    void commentCountAddOne(Integer id);
}